package com.framewiki.example.dto;

import com.cdkjframework.entity.base.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @ProjectName: com.lesmarthome.bms
 * @Package: com.lesmarthome.bms
 * @ClassName: RmsUser
 * @Description: 登录用户
 * @Author: DESKTOP-U0VVSVK
 * @Version: 1.0
 */

@Data
@EqualsAndHashCode(callSuper = false)
public class RmsUserDto extends BaseDto {

  private static final long serialVersionUID = -1;
  /**
   * 人脸识别编码
   */
  private String faceCode;
  /**
   * 登录名称
   */
  private String loginName;

  /**
   * 登录名称集合
   */
  private List<String> loginNameList;

  /**
   * 验证码
   */
  private String verifyCode;

  /**
   * 账户类型(1：老人；2：雇员；3、家属；4：志愿者)
   */
  private String userType;
  /**
   * 账户类型集合
   */
  private List<String> userTypeList;
  /**
   * 账户类型(1：老人；2：雇员；3、家属；4：志愿者)
   */
  private String userTypeName;
  /**
   * 姓名
   */
  private String displayName;
  /**
   * 密码
   */
  private String password;
  /**
   * 旧密码
   */
  private String oldPassword;
  /**
   * 手机
   */
  private String cellphone;
  /**
   * 座机
   */
  private String telephone;
  /**
   * 籍贯
   */
  private String nativePlace;
  /**
   * 民族
   */
  private String nation;
  /**
   * 头像
   */
  private String headPortrait;
  /**
   * 最后登录时间
   */
  private LocalDateTime lastLoginTime;
  /**
   * 是否锁定
   */
  private Integer locked;
  /**
   * 性别(1 男,2 女)
   */
  private Integer sex;
  /**
   * 生日
   */
  private LocalDate birthday;
  /**
   * 居住详细地址
   */
  private String addressDetails;
  /**
   * 是否可用
   */
  private Integer enabled;
  /**
   * 当前所在组织ID
   */
  private String currentOrganizationId;

  /**
   * 机构类型
   */
  private Integer organizationType;
  /**
   * 代表是否一张床可以绑定多个人，0 不可以 ，1可以
   */
  private Integer bedMores;

  /**
   * 是否开启两级权限 0默认值（0：未开启，1:开启）
   */
  private Integer permissions;

  /**
   * 余额共享
   */
  private Integer balanceShare;

  /**
   * 备注
   */
  private String remark;
  /**
   * token
   */
  private String token;

  /**
   * 返回前端，用于其他平台通过key获取token
   */
  private String tokenKey;

  /**
   * 角色IDs
   */
  private List<String> roleIds;

  /**
   * 微信开放id ，用于微信登录
   */
  private String weChatOpenId;

  /**
   * 员工编号
   */
  private String jobNumber;

  /**
   * 编号
   */
  private String number;

  /**
   * 子商户应用ID
   */
  private String appId;
  /**
   * 子商户号
   */
  private String merchantId;

  /********网点管理用户********/

  /***
   * 审核状态(审核状态 0.待审核 1.已审核)
   */
  private Integer auditStatus;

  /***
   * 身份证号码
   */
  private String idCard;

  /***
   * 联系地址
   */
  private String addressContact;

  /***
   * 工作职务
   */
  private String jobTitle;

  /***
   * 网点id
   */
  private String netId;

  /***
   * 所属网点
   */
  private String superiorOrganizationId;

  /***
   * 网点名称
   */
  private String net;

  /***
   * 所属职务
   */
  private String jobTile;

  /***
   * 工作职务名称
   */
  private String jobTitleName;

  /***
   * 网点名称
   */
  private String superiorOrganizationName;

  /**
   * 国际区号
   */
  private String areaCode;

  /**
   * 语言类型
   */
  private String languageType;

  /**
   * 设备编码
   */
  private String deviceCode;

  /**
   * 是否为忘记密码
   */
  private Boolean forgetPassword = false;

  /**
   * 最后修改密码时间
   */
  private LocalDateTime lastUpdPwdTime;

  /**
   * 登录名称的模糊查询标识 1: 采用模糊查询方式，0：使用全等的查询方式
   */
  private Integer vagueFlag = 0;

  /**
   * 小程序获取信息code
   */
  private String weChatAppletsJsCode;
  /**
   * 加密数据
   */
  private String encryptedData;
  /**
   * 加密向量
   */
  private String iv;
  /**
   * 省_id
   */
  private String provinceId;
  /**
   * 市_id
   */
  private String cityId;
  /**
   * 区（县）id
   */
  private String countyId;
}

